home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Internet Info 1994 March
/
Internet Info CD-ROM (Walnut Creek) (March 1994).iso
/
answers
/
comp
/
free-compilers
/
part2
< prev
next >
Wrap
Text File
|
1994-04-01
|
47KB
|
1,262 lines
Newsgroups: comp.compilers,comp.lang.misc,comp.archives.admin,news.answers,comp.answers
Path: bloom-beacon.mit.edu!hookup!europa.eng.gtefsd.com!howland.reston.ans.net!agate!ihnp4.ucsd.edu!pacbell.com!decwrl!decwrl!olivea!grapevine.lcs.mit.edu!think.com!spdcc!iecc!compilers-sender
From: free-compilers@idiom.berkeley.ca.us (Steve Robenalt)
Subject: Catalog of compilers, interpreters, and other language tools [p2of5]
Message-ID: <free2-Apr-94@comp.compilers>
Followup-To: comp.lang.misc
Summary: Monthly posting of free language tools that include source code
Keywords: tools, FTP, administrivia
Sender: compilers-sender@chico.iecc.com
Supersedes: <free2-Mar-94@comp.compilers>
Reply-To: free-compilers@idiom.berkeley.ca.us (Steve Robenalt)
Organization: Idiom Consulting / Berkeley, CA
References: <free1-Apr-94@comp.compilers>
Date: Fri, 1 Apr 1994 12:00:23 GMT
Approved: compilers@iecc.com
Expires: Sun, 1 May 1994 23:59:00 GMT
Lines: 1242
Xref: bloom-beacon.mit.edu comp.compilers:2735 comp.lang.misc:3641 comp.archives.admin:570 news.answers:17136 comp.answers:4372
Archive-name: free-compilers/part2
Last-modified: 1994/3/31
Version: 6.41
C variants
-------------------------------------------------------------------------------
category: C variants
description: These are languages that are closely based on C.
lref: C-Refine, C++-Refine, *-Refine
lref: (C,Duel) Duel (a <practical> C debugging language)
language: C, C++, Objective-C, RTL
package: GNU CC (gcc)
version: 2.5.8
parts: compiler, runtime, examples, documentation
Library listed separately
author: Richard Stallman <gnu@prep.ai.mit.edu> and others
how to get: ftp gcc-2.X.X.tar.gz from a GNU archive site
msdos: ftp pub/msdos/djgpp/* from oak.oakland.edu
6811: ftp pub/coactive/gcc-6811-beta.tar.gz from netcom.com
(these are diffs from 2.5.8 distribution)
description: A very high quality, very portable compiler for C, C++,
Objective-C. The compiler is designed to support multiple
front-ends and multiple back-ends by translating first
into RTL (Register Transfer Language) and from there into
assembly for the target architecture. Front ends for
Ada, Pascal, and Fortran are all under development.
conformance: C: superset of K&R C and ANSI C.
C++: not exactly cfront 3.0? [could someone tell me which
version of cfront it is equivalent to, if any? --ed]
Objective-C: ?
bugs: gnu.gcc.bug
restriction: GNU General Public License
ports: 3b1, a29k, aix385, alpha, altos3068, amix, arm, convex,
crds, elxsi, fx2800, fx80, genix, hp320, clipper,
i386-{dos,isc,sco,sysv.3,sysv.4,mach,bsd,linux,windows,OS/2},
iris,i860, i960, irix4, m68k, m88ksvsv.3, mips-news,
mot3300, next, ns32k, nws3250-v.4, hp-pa, pc532,
plexus, pyramid, romp, rs6000, sparc-sunos,
sparc-solaris2, sparc-sysv.4, spur, sun386, tahoe, tow,
umpis, vax-vms, vax-bsd, we32k, hitachi-{SH,8300}, 6811
portability: very high
status: actively developed
discussion: gnu.gcc.help
announcements: gnu.gcc.announce
updated: 1993/11/27
language: C, C++, Objective-C, RTL
package: GNU CC (gcc) - unsupported Macintosh port
version: 1.37
parts: compiler, runtime, examples, documentation
Library listed separately
author: ?
how to get: ftp mpw-gcc-1.37.1r14 from ?
description: This is an unsupported port of the GNU C compiler to the
Macintosh environment. Note that the GNU project is actively
supporting the League for Programming Freedom (LPF) boycott
of Apple due to the "Look and Feel" lawsuit.
bugs: ?
restriction: GNU General Public License
ports: Macintosh
portability: very high
status: ?
updated: 1993/11/27
language: C
package: GNU C Library (glibc)
version: 1.06
parts: library
author: ?
how to get: ftp glibc-1.06.tar.Z from a GNU archive site
Source for "crypt" must be FTP'ed from non-USA site if you are
outside the USA (site: glibc-1.06-crypt.tar.z from
ftp.uni-c.dk [129.142.6.74]).
description: The run-time library for the GNU C compiler, gcc. The source
for libc.a. This package is separately maintained.
conformance: ANSI and POSIX.1 superset. Large subset of POSIX.2
bugs: Reports sent to mailing list bug-glibc@prep.ai.mit.edu.
updated: 1993/06/25
language: C
package: fdlibm
version: ?
parts: library
author: Dr. K-C Ng
how to get: ftp netlib/fdlibm.tar from netlib.att.com
description: Dr. K-C Ng has developed a new version of libm that is the
basis for the bundled /usr/lib/libm.so in Solaris 2.3 for SPARC
and for future Solaris 2 releases for x86 and PowerPC. It
provides the standard functions necessary to pass the usual
test suites. This new libm can be configured to handle
exceptions in accordance with various language standards or in
the spirit of IEEE 754. The C source code should be portable to
any IEEE 754 system with minimal difficulty.
conformance: IEEE 754
bugs: Send comments and bug reports to:
fdlibm-comments@sunpro.eng.sun.com.
updated: 1993/12/18
language: C
package: c68/c386
version: 4.2a
parts: compiler
author: Matthew Brandt, Christoph van Wuellen, Keith and Dave Walker
how to get: ftp pub/Minix/common-pkgs/c386-4.2.tar.Z from bugs.nosc.mil
description: K&R C plus prototypes and other ANSI features.
targetted to several 68k and i386 assemblers, incl. gas.
floating point support by inline code or emulation.
lots of available warnings. better code generation than ACK.
ports: 386 and 68k Minix. generic unix actually.
status: actively worked on by the Walkers.
discussion: comp.os.min
updated: ?
language: C
package: GNU superoptimizer
version: 2.2
parts: exhaustive instruction sequence optimizer
author: Torbjorn Granlund <tege@gnu.ai.mit.edu> with Tom Wood
how to get: ftp superopt-2.2.tar.Z from a GNU archive site
description: GSO is a function sequence generator that uses an exhaustive
generate-and-test approach to find the shortest instruction
sequence for a given function. You have to tell the
superoptimizer which function and which CPU you want to get
code for.
This is useful for compiler writers.
bugs: Torbjorn Granlund <tege@gnu.ai.mit.edu>
restriction: GNU General Public License
ports: Alpha, Sparc, i386, 88k, RS/6000, 68k, 29k, Pyramid(SP,AP,XP)
updated: 1993/02/16
language: C
package: xdbx
version: 2.1
parts: X11 front end for dbx
author: ?
how to get: retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16
description: ?
contact: Po Cheung <cheung@sw.mcc.com>
updated: 1992/02/22
language: C
package: ups
version: 2.1
parts: interpreter, symbolic debugger, tests, documentation
author: Mark Russell <mtr@ukc.ac.uk>
how to get: ? ftp from contrib/ups*.tar.Z from export.lcs.mit.edu ?
unofficial: unofficial enhancements by Rod Armstrong <rod@sj.ate.slb.com>,
available by ftp misc/unix/ups/contrib/rob from sj.ate.slb.com
description: Ups is a source level C debugger that runs under X11 or
SunView. Ups includes a C interpreter which allows you to add
fragments of code simply by editing them into the source window
bugs: Mark Russell <mtr@ukc.ac.uk>
ports: Sun, Decstation, VAX(ultrix), HLH Clipper
discussion: ups-users-request@ukc.ac.uk
updated: 1991/05/20
language: C
package: C-Interp
version: ?
parts: interpreter
author: ?
how to get: ftp Mac/Misc/C_Interp.sit from oac2.hsc.uth.tmc.edu
description: An interpreter for a small subset of C, originally part of a
communications package.
contact: ? Chuck Shotton <cshotton@oac.hsc.uth.tmc.edu>
updated: 1993/05/14
langauge: C
package: ae (application executive)
version: 1?
parts: interpreter
author: Brian Bliss <bliss@sp64.csrd.uiuc.edu> [Is this right? --ed]
how to get: ftp pub/at.tar.Z from sp2.csrd.uiuc.edu
description: ae (the "application executive") is a C interpreter library
which is compiled with an application; hence, the interpreter
exists in the same process and address space. it includes a
dbx symbol table scanner to access compiled vars & routines, or
you can enter them manually by providing a type/name
declaration and the address. when the interpreter is invoked,
source code fragments are read from the input stream (or a
string), parsed, and evaluated immediately. The user can call
compiled functions in addition to a few built-in intrinsics,
declare new data types and data objects, etc. Different input
streams can be evaluated in parallel on alliant machines.
ports: SunOS (cc or gcc), Alliant FX, Cray YMP (soon)
updated: 1992/04/21
language: C (ANSI), lcc
package: lcc
version: 1.8
parts: compiler, test suite, documentation
author: Dave Hanson <drh@cs.princeton.edu>
how to get: ftp pub/lcc/lccfe-*.tar.Z from princeton.edu
description: + hand coded C parser (faster than yacc)
+ retargetable
+ code "as good as GCC"
ports: vax (mips, sparc, 68k backends are commercial)
status: small-scale production use using commerical backends; the
commercial backends are cheap (free?) to universities.
discussion: lcc-requests@princeton.edu
updated: 1992/02/20
language: C, lcc
package: Chop
version: 0.6
parts: code generator
author: Alan L. Wendt <wendt@CS.ColoState.EDU>
how to get: ftp pub/chop/0.6.tar.Z from beethoven.cs.colostate.edu
description: The current revision, 0.6, is interfaced with Fraser and
Hanson's lcc front end. The result is a highly fast C compiler
with good code selection and no global optimization.
Project Status: Chop compiles and runs a number of small test
programs on the Vax. I'm currently updating the NS32k and 68K
retargets for lcc compatibility. After I get them working,
I'll work on getting the system to compile itself, get struct
assignments working, improve the code quality and compile
speed, and run the SPEC benchmarks. That will be rev 1.0.
reference: "Fast Code Generation Using Automatically-Generated Decision
Trees", ACM SIGPLAN '90 PLDI
updated: 1993/04/28
language: C
package: GCT
version: 1.4
parts: test-coverage-preprocessor
author: Brian Marick <marick@cs.uiuc.edu>
how to get: ftp pub/testing/gct.file/ftp.* from cs.uiuc.edu
description: GCT is test-coverage tool based on GNU C. Coverage tools
measure how thoroughly a test suite exercises a program.
restriction: CopyLeft
ports: sun3, sun4, rs/6000, 68k, 88k, hp-pa, ibm 3090,
ultrix, convex, sco
discussion: Gct-Request@cs.uiuc.edu
support: commercial support available from author, (217) 351-7228
updated: 1993/02/12
language: C
package: MasPar mpl, ampl
version: 3.1
parts: compiler
author: ?
how to get: ftp put/mpl-* from maspar.maspar.com
description: mpl & ampl - the intrinsic parallel languages for MasPar's
machines are C (ampl is actually a gcc port these days). You
can get the source from marpar.com.
contact: ?
updated: ?
language: C
package: gc
version: 3.4
parts: library
author: Hans-J. Boehm <boehm@parc.xerox.com>, Alan J. Demers
how to get: ftp pub/russell/gc3.4.tar.Z from parcftp.xerox.com
description: This is a garbage colecting storage allocator that is intended
to be used as a plug-in replacement for C's malloc. Since the
collector does not require pointers to be tagged, it does not
attempt to ensure that all inaccessible storage is reclaimed.
However, in our experience, it is typically more successful at
reclaiming unused memory than most C programs using explicit
deallocation. Unlike manually introduced leaks, the amount of
unreclaimed memory typically stays bounded.
ports: Sun-3, Sun-4 , Vax/BSD, Ultrix, i386/Unix, SGI, Alpha/OSF/1,
Sequent (single threaded), Encore (single threaded),
RS/600, HP-UX, Sony News, A/UX, Amiag, NeXT.
updated: 1993/11/05
language: C
package: dsp56k-gcc
version: ?
parts: compiler
author: ?
how to get: ftp pub/ham/dsp/dsp56k-tools/dsp56k-gcc.tar.Z from nic.funet.fi
Australia: ftp pub/micros/56k/g56k.tar.Z from evans.ee.adfa.oz.au
description: A port of gcc 1.37.1 to the Motorola DSP56000 done by
Motorola
contact: ?
updated: ?
language: C
package: dsp56165-gcc
version: ?
parts: compiler
author: Andrew Sterian <asterian@eecs.umich.edu>
how to get: ftp usenet/alt.sources/? from wuarchive.wustl.edu
description: A port of gcc 1.40 to the Motorola DSP56156 and DSP56000.
updated: ?
language: C
package: Harvest C
version: 1.3
parts: compiler, assembler, linker.
author: ?
how to get: ftp mac/development/languages/harves* from archive.umich.edu
description: The parts of the system are all integrated in a unique
application, which manages a "project" composed by several C
source files and resource files (which contain data).
ports: Macintosh
contact: Eric W. Sink
updated: 1992/05/26
language: C, C++
package: Cyclo - cyclomatic complexity tool
version: the one and only version
parts: code analysis tool
author: Roger D Binns
how to get: alt.sources archive, 1993/06/28, <C9C2rH.EE@brunel.ac.uk>
description: It measures cyclomatic complexity, shows function calls and
can draw flowgraphs of ANSI C and C++ code.
requires: lex, C++
updated: 1993/06/28
language: C
package: cxref
version: ?
parts: code analysis tool
author: Arnold Robbins <arnold@gatech.?>
how to get: use archie
description: A cross-reference genrator
updated: ?
language: C
package: xref
version: ?
parts: code analysis tool
author: Jim Leinweber
how to get: use archie
description: A cross-reference genrator
updated: 1985?
language: C, C++
package: Xcoral
version: 1.72
parts: editor
author: ?
how to get: ftp X/contrib/clients/xcoral* from ftp.inria.fr
description: Xcoral is a multiwindows mouse-based text editor, for X Window
System, with a built-in browser to navigate through C functions
and C++ classes hierarchies... Xcoral provides variables width
fonts, menus, scrollbars, buttons, search, regions,
kill-buffers and 3D look. Commands are accessible from menus
or standard key bindings. Xcoral is a direct Xlib client and
run on color/bw X Display.
contact: ?
updated: 1993/03/14
language: C++
package: Lily (LIsp LibrarY)
version: 0.1
parts: library
author: Roger Sheldon <sheldon@kong.gsfc.nasa.gov>
how to get: ftp uploads/lily-0.1.tar.gz from sunsite.unc.edu
description: Lilly is a C++ class library which gives C++ programmers the
capability to write LISP-style code. Lily's garbage collection
mechanism is not sufficient for commercial use. The
documentation is incomplete.
requires: C++ (g++ or Turbo C++, but not cfront)
restriction: GNU Library General Public License
updated: 1993/11/08
language: C++
package: C++SIM
version: 1.0
parts: library
author: Mark Little <M.C.Little@newcastle.ac.uk>
how to get: ftp ? from arjuna.ncl.ac.uk
description: C++SIM is a class library that provides the same sort of
features found in the simulation class libraries of SIMULA.
updated: 1993/06/14
language: C++
package: ? signatures for GCC 2.5.2. ?
version: ?
parts: patches to GNU CC, documentation
author: Gerald Baumgartner <gb@cs.purdue.edu>
how to get: ftp pub/gb/* from ftp.cs.purdue.edu
description: Signatures are very similar to abstract base classes except
that they have their own heirarchy and can be applied to
compiled classes. They provide a means of separating
subtyping and inheritance.
requires: GNU CC 2.5.2
updated: 1993/11/03
language: C++
package: aard ???
version: ?
parts: memory use tracer
author: ?
how to get: ftp pub/aard.tar.Z from wilma.cs.brown.edu
description: We have a prototype implementation of a tool to do memory
checking. It works by keeping track of the typestate of each
byte of memory in the heap and the stack. The typestate can be
one of Undefined, Uninitialized, Free or Set. The program can
detect invalid transitions (i.e. attempting to set or use
undefined or free storage or attempting to access uninitialized
storage). In addition, the program keeps track of heap
management through malloc and free and at the end of the run
will report all memory blocks that were not freed and that are
not accessible (i.e. memory leaks).
The tools works using a spliced-in shared library.
requires: Sparc, C++ 3.0.1, SunOS 4.X
contact: Steve Reiss <spr@cs.brown.edu>
updated: ?
language: C++
package: ET++
version: 3.0-alpha
parts: class libraries, documentation
author: ?
how to get: ftp C++/ET++/* from iamsun.unibe.ch
description: ?
contact: Erich Gamma <gamma@ifi.unizh.ch>
updated: 1992/10/26
language: C++
package: C++ grammar
version: ?
parts: parser (yacc)
author: ?
how to get: comp.sources.misc volume ?
description: [is this a copy of the Roskind grammar or something else? --ed]
updated: 1991/10/23
language: C++
package: cppp
version: 1.14
parts: parser (yacc)
author: Tony Davis <ted@cs.brown.edu>
how to get: wilma.cs.brown.edu:/pub/cppp.tar.Z
description: A compiler front-end for C++, with complete semantic
processing. Outputs abstract syntax graph.
restriction: Permission needed for incorporation into commercial software.
requires: Native C++ compiler, lex, yacc, make, sed (or hand editing)
status: Upgrading the back end.
updated: 1993/05/26
language: C++
package: C++ Object Oriented Library
version: COOL ?, GECOOL 2.1, JCOOL 0.1
parts: libraries, tests, documentation
author: ?
how to get: GECOOL, JCOOL: ftp pub/COOL/* from cs.utexas.edu
COOL: ftp pub/COOL.tar.Z from csc.ti.com
description: A C++ class library developed at Texas Instruments. Cool
contains a set of containers like Vectors, List, Hash_Table,
etc. It uses a shallow hierarchy with no common base class.
The funtionality is close to Common Lisp data structures (like
libg++). The template syntax is very close to Cfront3.x and
g++2.x. Can build shared libraries on Suns. JCOOL's main
difference from COOL and GECOOL is that it uses real C++
templates instead of a similar syntax that is preprocessed by
a special 'cpp' distributed with COOL and GECOOL.
ports: ?
contact: Van-Duc Nguyen <nguyen@crd.ge.com>
updated: 1992/08/05
language: C++
package: GNU C++ Library (libg++)
version: 2.5.1
parts: library
author: Per Bothner <bothner@cygnus.com> ?
how to get: libg++-2.5.1.tar.gz from a GNU archive site
description: The run-time library for the GNU C++ compiler.
This package is separately maintained.
conformance: ? ANSI and POSIX.1 superset
bugs: bug-lib-g++@prep.ai.mit.edu
updated: 1993/06/30
language: C++
package: ??? A C++ Parser toolkit
version: ?
parts: library
author: Mayan Moudgill <moudgill@cs.cornell.EDU>
how to get: ftp pub/Parse.shar from ftp.cs.cornell.edu
description: A collection of C++ classes that make building a
recursive descent parser/scanner very easy.
ports: Sun 4 with cfront 3.0,
portability: uses mmap(); probably low.
updated: 1993/04/11
language: C++, Extended C++
package: EC++
version: ?
parts: translator(C++), documentation
author: Glauco Masotti <masotti@lipari.usc.edu>
how to get: ? ftp languages/c++/EC++.tar.Z from ftp.uu.net ?
description: EC++ is a preprocessor that translates Extended C++
into C++. The extensions include:
+ preconditions, postconditions, and class invariants
+ parameterized classes
+ exception handling
+ garbage collection
status: ?
updated: 1989/10/10
language: C++
package: LEDA
version: 3.0
parts: libraries
author: ?
how to get: ftp pub/LEDA/* from ftp.cs.uni-sb.de
description: library of efficient data types and algorithms.
New with 3.0: both template and non-template versions.
contact: Stefan N"aher <stefan@mpi-sb.mpg.de>
updated: 1992/11/30
language: E (a persistent C++ variant)
package: GNU E
version: 2.3.3
parts: compiler
author: ?
how to get: ftp exodus/E/gnu_E* from ftp.cs.wisc.edu
description: GNU E is a persistent, object oriented programming language
developed as part of the Exodus project. GNU E extends C++
with the notion of persistent data, program level data objects
that can be transparently used across multiple executions of a
program, or multiple programs, without explicit input and
output operations.
GNU E's form of persistence is based on extensions to the C++
type system to distinguish potentially persistent data objects
from objects that are always memory resident. An object is
made persistent either by its declaration (via a new
"persistent" storage class qualifier) or by its method of
allocation (via persistent dynamic allocation using a special
overloading of the new operator). The underlying object
storage system is the Exodus storage manager, which provides
concurrency control and recovery in addition to storage for
persistent data.
restriction: Copyleft; not all runtime sources are available (yet)
requires: release 2.1.1 of the Exodus storage manager
contact: exodus@cs.wisc.edu
updated: 1993/01/20
language: C (ANSI)
package: ? 1984 ANSI C to K&R C preprocessor ?
version: ?
parts: translator(K&R C)
author: ?
how to get: from comp.sources.unix archive volume 1
description: ?
status: ?
updated: ?
language: C (ANSI)
package: unproto ?
version: ? 4 ? 1.6 ?
parts: translator(K&R C)
author: Wietse Venema <wietse@wzv.win.tue.nl>
how to get: ftp pub/unix/unproto4.shar.Z from ftp.win.tue.nl
description: ?
contact: ?
updated: ?
language: C (ANSI)
package: cproto
version: ?
parts: translator(K&R C)
author: Chin Huang <chin.huang@canrem.com>
how to get: from comp.sources.misc archive volume 29
description: cproto generates function prototypes from function definitions.
It can also translate function definition heads between K&R
style and ANSI C style.
ports: Unix, MS-DOS
updated: 1992/07/18
language: C (ANSI)
package: cextract
version: 1.7
parts: translator(K&R C), header file generator
author: Adam Bryant <adb@cs.bu.edu>
how to get: ftp from any comp.sources.reviewed archive
description: A C prototype extractor, it is ideal for generating
header files for large multi-file C programs, and will
provide an automated method for generating all of the
prototypes for all of the functions in such a program.
It may also function as a rudimentary documentation
extractor, generating a sorted list of all functions
and their locations
ports: Unix, VMS
updated: 1992/11/03
language: ANSI C
package: cgram
version: ?
parts: grammar
author: Mohd Hanafiah Abdullah <napi@cs.indiana.edu>
how to get: ftp pub/comp.compilers/cgram-ll1.Z from primost.cs.wisc.edu
description: An ANSI C grammar in LL(k) (1 <= k <= 2). It's written in
Scheme, so you need to have a Scheme interpreter to process
the grammar using a program (f-f-d.s) that extracts the
FIRST/FOLLOW/DIRECTOR sets.
requires: Scheme
ports: ?
updated: ?
language: C, ANSI C, C++
package: The Roskind grammars
version: cpp5 (cf2.0)
parts: parser(yacc), documenation
author: Jim Roskind <jar@hq.ileaf.com>
how to get: ftp gnu/c++grammar2.0.tar.Z from ics.uci.edu
ftp pub/C++/c++grammar2.0.tar.Z from mach1.npac.syr.edu
description: The C grammar is CLEAN, it does not use %prec, %assoc, and
has only one shift-reduce conflict. The C++ grammar has
a few conflicts.
Also included is an extension to byacc that produces
graphical parse trees automatically.
conformance: the C grammar si true ANSI; the C++ grammar supports
cfront 2.0 constructs.
requires: byacc 1.8 (for graphical parse trees)
status: actively developed
updated: 1991/07/01
language: C, C++
package: xxgdb
version: 1.06
parts: X11 front end for gdb
author: ?
how to get: retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16
description: ?
contact: Pierre Willard <pierre@la.tce.com>
updated: 1992/02/22
language: C, C++
package: gdb
version: 4.11
parts: symbolic debugger, documentation
author: many, but most recently Fred Fish <fnf@cygnus.com>,
Stu Grossman <grossman@cygnus.com>, and
John Gilmore <gnu@cygnus.com>, all of Cygnus Support
how to get: ftp gdb-*.tar.[zZ] from a GNU archive site
description: gdb is a full-featured symbolic debugger. It fills the
same niche as dbx. Programs must be compiled with debugging
symbols.
bugs: <bug-gdb@prep.ai.mit.edu>
restriction: CopyLeft
ports: most unix variants, vms, vxworks, amiga, msdos
updated: 1993/10/29
language: C, C++, Objective-C
package: emx programming environment for OS/2
version: 0.8g
parts: gcc, g++, gdb, libg++, .obj linkage, DLL, headers
author: Eberhard Mattes <mattes@azu.informatik.uni-stuttgart.de>
how to get: ftp os2/2_x/unix/gnu/emx0.8g from ftp-os2.cdrom.com
Europe: ftp soft/os2/emx-0.8g from ftp.uni-stuttgart.de
description: ?
discussion: subscribe to emx-list using listserv@ludd.luth.se
updated: 1992/09/21
language: C
package: Pthreads
version: 1.17
parts: library
author: PART (POSIX / Ada-Runtime Project)
how to get: ftp pub/PART/pthreads* from ftp.cs.fsu.edu
description: As part of the PART project we have been designing and
implementing a library package of preemptive threads which is
compliant with POSIX 1003.4a Draft 6. A description of the
interface for our Pthreads library is now available on ftp.
restriction: GNU General Public License
discussion: send "Subject: subscribe-pthreads" to mueller@uzu.cs.fsu.edu
ports: Sun-4/SunOS 4.1.x
contact: pthreads-bugs@ada.cs.fsu.edu
updated: 1993/07/22
language: C, nroff, texinfo, latex
package: c2man
version: 2.0 patchlevel 25
parts: documentation generator (C -> nroff -man, -> texinfo, -> latex)
author: Graham Stoney <greyham@research.canon.oz.au>
how to get: ftp usenet/comp.sources.reviewed/volume03/c2man*
from ftp.wustl.edu
Europe: ftp /pub/archive/comp.sources/reviewed/c2man*
from ftp.informatik.uni-stuttgart.de
Patches: ftp pub/netnews/sources.bugs/volume93/sep/c2man* from lth.se
description: c2man is an automatic documentation tool that extracts comments
from C source code to generate functional interface
documentation in the same format as sections 2 & 3 of the Unix
Programmer's Manual. It requires minimal effort from the
programmer by looking for comments in the usual places near the
objects they document, rather than imposing a rigid
function-comment syntax or requiring that the programmer learn
and use a typesetting language. Acceptable documentation can
often be generated from existing code with no modifications.
conformance: supports both K&R and ISO/ANSI C coding styles
features: + generates output in nroff -man, TeXinfo or LaTeX format
+ handles comments as part of the language grammar
+ automagically documents enum parameter & return values
+ handles C (/* */) and C++ (//) style comments
- doesn't handle C++ grammar (yet)
requires: yacc/byacc/bison, lex/flex, and nroff/groff/texinfo/LaTeX.
ports: Unix, OS/2, MSDOS
portability: very high for unix, via Configure
status: actively developed; contributions by users are encouraged.
discussion: send "subscribe c2man <Your Name>" (in the message body) to
listserv@research.canon.oz.au
announcements: patches appear first in comp.sources.bugs, later in
comp.sources.reviewed after a review period.
updated: 1994/02/21
language: Small-C
package: smallc
version: ?
parts: compiler
author: ?
how to get: ?, comp.sources.unix volume 5
description: Small-C is a subset of the C programming language for which a
number of public-domain compilers have been written. The
original compiler was written by Ron Cain and appeared in the
May 1980 issue of Dr.Dobb's Journal. More recently, James
E.Hendrix has improved and extended the original Small-C
compiler and published "The Small-C Handbook", ISBN
0-8359-7012-4 (1984). Both compilers produce 8080 assembly
language, which is the most popular implementation of Small-C
to-date. My 6502 Small-C compiler for the BBC Micro is based
on "RatC", a version of the original Ron Cain compiler
described by R.E.Berry and B.A.Meekings in "A Book on C", ISBN
0-333-36821-5 (1984). The 6502 compiler is written in Small-C
and was bootstrapped using Zorland C on an Amstrad PC1512 under
MSDOS 3.2, then transferred onto a BBC Micro using Kermit. The
compiler can be used to cross-compile 6502 code from an MSDOS
host, or as a 'resident' Small-C compiler on a BBC Micro.
conformance: subset of C
ports: 68k, 6809, VAX, 8080, BBC Micro, Z80
updated: 1989/01/05
language: Maisie
package: Maisie
version: 2.1
parts: ?, user manual, examples
author: Wen-Toh Liao <wentoh@may.CS.UCLA.EDU>
how to get: ftp pub/maisie.2.1.1.3.tar.Z from cs.ucla.edu
description: C-based parallel programming language that uses asynchronous
typed-message passing and supports light-weight processes.
The language is C with enhancements to allow processes to be
defined, created, and destroyed, to send and receive messages,
and manipulate the system clock.
ports: PVM/3.1, Cosmic Environment, and SUN Sockets.
updated: 1993/06/14
language: MeldC (MELD, C)
package: MeldC
version: 2.0
parts: microkernel, compiler, debugger, manual, examples
author: MELD Project, Programming Systems Laboratory at
Columbia University
how to get: obtain license from <MeldC@cs.columbia.edu>
description: MeldC 2.0: A Reflective Object-Oriented Coordination
Programming Language MELDC is a C-based, concurrent,
object-oriented language built on a reflective architecture.
The core of the architecture is a micro-kernel (the MELDC
kernel), which encapsulates a minimum set of entities that
cannot be modeled as objects. All components outside of the
kernel are implemented as objects in MELDC itself and are
modularized in the MELDC libraries. MELDC is reflective in
three dimensions: structural, computational and architectural.
The structural reflection indicates that classes and
meta-classes are objects, which are written in MELDC. The
computational reflection means that object behaviors can be
computed and extended at runtime. The architectural reflection
indicates that new features/properties (e.g., persistency and
remoteness) can be constructed in MELDC.
restriction: must sign license, cannot use for commercial purposes
ports: Sun4/SunOS4.1 Mips/Ultrix4.2
contact: <MeldC@cs.columbia.edu>
updated: 1992/12/15
language: uC++
package: uC++
version: 3.7
parts: compiler, reference
author: ? Peter A. Ruhr <pabuhr@plg.uwaterloo.ca>
how to get: ftp pub/uSystem/u++-3.7.tar.Z from plg.uwaterloo.ca
description: An extended C++ with light-weight concurrency for Unix-like
systems. uC++ is pronounced "micro-C++".
reference: Software--Practice and Experience, 22(2):137-172, February 1992.
requires: dmake 3.0+ (ftp pub/dmake/dmake38.tar.Z from plg.uwaterloo.ca)
GNU C++ 2.3.3
ports: Sequent, Sun-4, Sun-3, Ultrix, SGI, RS/6000, HP-PA
portability: Needs "setitimer" and "sigcontext" from Unix-like systems.
updated: 1993/06/10
language: Objective-C
package: Collection Library for GNU Objective-C
version: Alpha Release
parts: library
author: R. Andrew McCallum <mccallum@cs.rochester.edu> ?
how to get: ftp pub/ObjC/libcoll-*.tar.z from iesd.auc.dk
description: It's a library of Objective-C objects with similar
functionality to Smalltalk's Collection objects. It includes:
Set, Bag, Array, LinkedList, LinkList, CircularArray, Queue,
Stack, Heap, SortedArray, MappedCollector, GapArray and
DelegateList.
updated: 1993/06/01
language: Glenda
package: Glenda parallel programming environment
version: 0.91
parts: preprocessor,tuple server, and tuple functions
author: Ray Seyfarth <seyfarth@whale.st.usm.edu>
how to get: ftp pub/glenda.tar.Z from seabass.st.usm.edu
description: Glenda is a programming environment for parallel programming
implementing a variation of the Linda programming model
defined by Carriero and Gelernter. It consists of a C
preprocessor to allow reasonable syntax for the added
operations, a tuple server process and a set of functions to
connect an application to the tuple server.
ports: RS6000, SUN4, LINUX
updated: 1993/06/01
compiled, imperative languages
-------------------------------------------------------------------------------
category: compiled, imperitive languages
description: This is the set of traditional infix languages other than C
and Pascal which each have their own section.
cref: C variants
cref: Wirth family languages
lref: Simula
lref: Fortran
language: Ada
package: Ada/Ed
version: 1.11.0a+
parts: translator(?), interpreter, ?
author: ?
how to get: ftp pub/Ada/Ada-Ed from cnam.cnam.fr
description: Ada/Ed is a translator-interpreter for Ada. It is
intended as a teaching tool, and does not have the
capacity, performance, or robustness of commercial
Ada compilers. Ada/Ed was developed at New York
University, as part of a long-range project in
language definition and software prototyping.
conformance: Ada 83. Last validated with version 1.7 of the ACVC tests.
being an interpreter, it does not implement most
representation clauses, and thus does not support systems
programming close to the machine level.
ports: Unix, MSDOS, Amiga, Atari
contact: Michael Feldman <mfeldman@seas.gwu.edu>
updated: 1992/05/08
language: Ada
package: GW-Ada
version: ?
parts: translator, interpreter, editor, runtime environment
author: ?
how to get: ftp languages/ada/compiler/adaed/gwu/9309/dos
or languages/ada/compilers/adaed/gwu/mac from
wuarchive.wustl.edu
description: Ada/Ed is a translator-interpreter for Ada. It is
intended as a teaching tool, and does not have the
capacity, performance, or robustness of commercial
Ada compilers. Ada/Ed was developed at New York
University, as part of a long-range project in
language definition and software prototyping.
conformance: "Ada/Ed handles nearly all of Ada 83"
ports: MSDOS and Mac
contact: Michael Feldman <mfeldman@seas.gwu.edu>
restriction: For educational purposes only.
updated: 1993/09/01
language: Ada
package: Ada grammar
version: ?
parts: scanner(lex), parser(yacc)
author: ?
how to get: ftp from primost.cs.wisc.edu or mail to
compilers-server@iecc.cambridge.ma.us
description: ?
contact: masticol@dumas.rutgers.edu
updated: 1991/10/12
language: Ada
package: Compiler for Toy/Ada in SML/NJ
version: ?
parts: translator(?)
author: Amit Bhatiani <bhatiaa@polly.cs.rose-hulman.edu>
how to get: ftp pub/compiler*.tar.Z from master.cs.rose-hulman.edu
description: ?
conformance: subset
updated: 1992/04/08
language: Ada
package: NASA PrettyPrinter
version: ?
parts: Ada LR parser, ?
author: ? Michael Feldman <mfeldman@seas.gwu.edu> in comp.compilers
provided the initial reference to this package, he also has a
yacc grammar for ada.
how to get: ftp from Ada Software Repository on wsmr-simtel20.army.mil
description: pretty-print program that contains an ada parser
requires: Ada
updated: 1991/02/01
language: Ada
package: yacc grammar for Ada
version: ?
parts: parser(yacc)
author: Herman Fischer
how to get: ftp PD2:<ADA.EXTERNAL-TOOLS>GRAM2.SRC
from wsmr-simtel20.army.mil
description: ?
contact: ?
updated: 1991/02/01
language: Ada
package: Paradise
version: 2.0
parts: library
author: ?
how to get: ftp pub/Ada/Paradise from cnam.cnam.fr
description: Paradise is a subsystem (a set of packages) developped
to implement inter-processes, inter-tasks and
inter-machines communication for Ada programs in
the Unix world. This subsystem gives the user full
access to files, pipes, sockets (both Unix and
Internet), and pseudo-devices.
ports: Sun, Dec, Sony Mips, Verdex compiler, DEC compiler,
Alsys/Systeam compiler
contact: paradise-info@cnam.cnam.fr
updated: 1992/09/30
language: Ada
package: Adamakegen
version: 2.6.3
parts: makefile generator
author: Owen O'Malley <omalley@porte-de-st-ouen.ics.uci.edu>
how to get: ftp ftp/pub/arcadia/adamakegen* from spare.ics.uci.edu
description: A program that generates makefiles for Ada programs
requires: Icon
ports: Verdix, SunAda
updated: 1993/03/02
language: Ada 9X
package: GNAT
version: 1.4.5
parts: parser, library management system, documentation?
author: The GNAT Development Team <gnat-request@cs.nyu.edu>
how to get: ftp pub/gnat/* from cs.nyu.edu
description: A bootstrapped implementation of a Ada83 subset.
conformance: Currently only a subset of of Ada 83 is working. Compliance
to Ada 9X being worked on.
status: Activly developed. Very early release, but able to compile
itself.
updated: 1993/08/29
language: Algol, Foogol
package: foogol
version: ?
parts: compiler
author: ?
how to get: comp.sources.unix archive volume 8
description: ?
conformance: subset of Algol
ports: VAX
updated: ?
language: Algol
lref: Simula
language: BCPL
package: ?
version: ?
parts: ?
author: ?
how to get: ftp systems/amiga/programming/languages/BCPL/BCPL4Amiga.lzh
from wuarchive.wustl.edu.
description: The original INTCODE interpreter for BCPL.
ports: Amiga, Unix, MSDOS
contact: ?
updated: ?
language: BCPL
package: ?
version: ?
parts: ?
author: ?
how to get: ftp [.languages]bcpl.tar_z from ftp.syd.dit.csiro.au
description: A BCPL* (Basic Combined Programming Language) compiler
bootstrap kit with an INTCODE interpreter in C.
contact: Ken Yap <ken@syd.dit.CSIRO.AU>
updated: ?
language: E
package: Amiga E
version: 2.1b
parts: compiler, assembler, linker, utilities
author: Wouter van Oortmerssen <Wouter@mars.let.uva.nl>
how to get: ftp amiga/dev/lang/AmigaE21b.lha from amiga.physik.unizh.ch
description: An Amiga specific E compiler. E is a powerful and flexible
procedural programming language and Amiga E a very fast
compiler for it, with features such as compilation speed of
20000 lines/minute on a 7 Mhz amiga, inline assembler and
linker integrated into compiler, large set of integrated
functions, module concept with 2.04 includes as modules,
flexible type-system, quoted expressions, immediate and typed
lists, low level polymorphism, exception handling and much,
much more. Written in Assembly and E.
ports: Amiga
portability: not portable at all
status: actively developed
discussion: comp.sys.amiga.programmer (sometimes)
updated: 1993/03/01
language: Eiffel
package: ?
version: ?
parts: source checker
author: Olaf Langmack <langmack@inf.fu-berlin.de> and Burghardt Groeber
how to get: ftp pub/heron/ep.tar.Z from ftp.fu-berlin.de
description: A compiler front-end for Eiffel-3 is available. It has been
generated automatically with the Karlsruhe toolbox for
compiler construction according to the most recent public
language definition. The parser derives an easy-to-use
abstract syntax tree, supports elementary error recovery
and provides a precise source code indication of errors. It
performs a strict syntax check and analyses 4000 lines of
source code per second on a Sun-SPARC workstation.
updated: 1992/12/14
language: Sather
package: Sather programming language and environment
version: 0.2i
parts: compiler(->C), debugger, libraries, documentation, emacs macros
author: International Computer Science Institute in Berkeley, CA
how to get: ftp pub/sather/sa-0.2i.tar.Z from ftp.icsi.berkeley.edu
Europe: ftp pub/Sather/* from ftp.gmd.de
Australia: ftp pub/sather/* from lynx.csis.dit.csiro.au
Japan: ftp pub/lang/sather/* from sra.co.jp
description: Sather is a new object-oriented computer language
developed at the International Computer Science
Institute. It is derived from Eiffel and attempts to
retain much of that language's theoretical cleanliness
and simplicity while achieving the efficiency of C++.
It has clean and simple syntax, parameterized classes,
object-oriented dispatch, multiple inheritance, strong
typing, and garbage collection. The compiler generates
efficient and portable C code which is easily
integrated with existing code.
package: A variety of development tools including a debugger and browser
based on gdb and a GNU Emacs development environment
have also been developed. There is also a class library
with several hundred classes that implement a variety
of basic data structures and numerical, geometric,
connectionist, statistical, and graphical abstractions.
We would like to encourage contributions to the library
and hope to build a large collection of efficient,
well-written, well-tested classes in a variety of areas
of computer science.
conformance: reference implemantation
bugs: sather-admin@icsi.berkeley.edu
ports: Sun-4 HP9000/300 Decstation5000 MIPS SonyNews3000 Sequent/Dynix
SCO SysVR3.2 NeXT (from others: RS6000 SGI)
portability: high
status: actively developed.
discussion: sather-request@icsi.berkeley.edu
updated: 1992/07/02
language: XPL (PL/I dialect)
package: XPL optimizing Compiler
version: 1
parts: compiler, documentation
author: Robin Vowels <robin_vowels@rmit.edu.au>
how to get: mail to author
description: The compiler is a standard implementation of XPL and is based on
McKeeman, Horning, and Wortman's improved XCOM (which employs
hashed symbol table generation). It includes the extra built-in
function COREHALFWORD.
The following areas have been optimized: procedures calls when
the argument and corresponding parameter are of the same type,
and when the argument is a constant; constant subscripts; use of
CORELHALFWORD and COREWORD; string constants of length one;
iterative DO statements by transferring code to the end of the
loop.
String constants of length one do not require a descriptor,
hence more descriptors are available for string variables.
Comparison operations are treated as commutative, and an
improved Commute algorithm is used. Halfword instructions are
generated for BIT(16) variables.
These areas have been improved or re-written: calls on OUTPUT,
catenation, integer-to-string conversion, multiply, divide, and
MOD. An emitter for SS-type instructions has been added.
The compiler achieves an 11% reduction in object code
compiling itself, an 11% increase in compilation rate, a 55%
increase in compilation speed when the $E toggle is set.
Special treatment for catenating a string to an integer
substantially decreases consumption of the free string area, and
decreases string moves. The latter improvement is most
noticeable on small core machines.
Core requirements: less than the improved XCOM on which it is
based (approx. 98000 bytes). Symbol table size is 468.
ports: IBM System 370
portability: The compiler is written in XPL. The code generators are
machine-specific.
updated: 1993/08/07
object oriented langauges
-------------------------------------------------------------------------------
category: object oriented langauges
description: In general, object oriented langauges were categorized
elsewhere. Only those that were not anything but object-
oriented are here.
lref: ABCL ???
lref: ABCL/R2
lref: ALLOY
lref: C++
lref: CLU
lref: Common Lisp
lref: Dylan
lref: GNU E
lref: MeldC
lref: Objective-C
lref: Oberon-2
lref: Perl5
lref: Python
lref: Sather
lref: Simula
iref: (TCL) BOS
iref: (Scheme) STk
iref: (Scheme) SOS
language: O'small
package: O'small
version: Initial release
parts: compiler?, parser/scanner specification
author: ? Andreas Hense <hense@sol.cs.uni-sb.de>
how to get: FTP /pub/osmall/machine/* from cs.uni-sb.de (134.96.7.254)
description: A concise, formally defined object-oriented language suited
for teaching object oriented programming.
reference: (Numerous references listed in software documentation)
Christoph Boeschen. Christmas - An abstract machine for
O'small. Master's thesis, Universit"at des Saarlandes,
Fachbereich 14, June 1993.
requires: sml-yacc, sml-lex, sml-noshare (details in HowToGetML).
ports: Sun 4, SPARC (binaries provided).
portability: Probably portable to other Unix's.
updated: 1993/06/25
language: O'small
package: ?
version: ?
parts: interpreter
author: ?
how to get: ?
description: ?
requires: Miranda
ports: ?
portability: ?
updated: ?
language: Self
package: Self
version: 2.0
parts: ?, compiler?, debugger, browser
author: The Self Group at Sun Microsystems & Stanford University
how to get: ftp ? from self.stanford.edu
description: The Self Group at Sun Microsystems Laboratories, Inc., and
Stanford University is pleased to announce Release 2.0 of the
experimental object-oriented exploratory programming language
Self. Release 2.0 introduces full source-level debugging of
optimized code, adaptive optimization to shorten compile
pauses, lightweight threads within Self, support for
dynamically linking foreign functions, changing programs within
Self, and the ability to run the experimental Self graphical
browser under OpenWindows.
Designed for expressive power and malleability, Self combines a
pure, prototype-based object model with uniform access to state
and behavior. Unlike other languages, Self allows objects to
inherit state and to change their patterns of inheritance
dynamically. Self's customizing compiler can generate very
efficient code compared to other dynamically-typed
object-oriented languages.
ports: Sun-3 (no optimizer), Sun-4
portability: ? [Can it be ported to non-Sun or non-Unix systems?]
discussion: self-request@self.stanford.edu
contact: ?
updated: 1992/08/13
language: Smalltalk
package: Little Smalltalk
version: 3
parts: ?
author: Tim Budd <budd@cs.orst.edu> ?
how to get: ftp pub/budd/? from cs.orst.edu
description: ?
ports: unix, pc, atari, vms
status: ?
updated: ?
language: Smalltalk
package: GNU Smalltalk
version: 1.1.1
parts: ?
author: Steven Byrne <sbb@eng.sun.com>
how to get: ftp smalltalk-1.1.1.tar.Z from a GNU archive site
description: ?
bugs: gnu.smalltalk.bug
discussion: ?
contact: ?
updated: 1991/09/15
language: Smalltalk
package: msgGUI
version: 1.0
parts: library
author: Mark Bush <bush@ecs.ox.ac.uk>
how to get: ftp pub/Packages/mst/mstGUI-1.0.tar.Z from ftp.comlab.ox.ac.uk
description: GUI for GNU Smalltalk. This this package contains the basics
for creating window applications in the manner available in
other graphical based Smalltalk implementations.
updated: 1992/12/14
language: Smalltalk
package: Mei
version: 0.50
parts: interpreters(Lisp,Prolog), examples, libraries, tools, editor,
browser
author: Atsushi Aoki <aoki@sra.co.jp> and others
how to get: ftp pub/goodies/misc/Mei.tar.Z from mushroom.cs.man.ac.uk
N.America: ftp pub/MANCHESTER/misc/Mei from st.cs.uiuc.edu
Japan: ftp pub/lang/smalltalk/mei/Mei0.50.tar.Z from srawgw.sra.co.jp
description: Mei is a set of class libraries for Objectworks Smalltalk
Release 4.1. it includes: 1. Grapher Library (useful for
drawing diagrams); 2. Meta Grapher Library (grapher to develop
grapher); 3. Drawing tools and painting tools (structured
diagram editors and drawing editors); 4. GUI editor (graphical
user interface builder); 5. Lisp interpreter; 6. Prolog
interpreter; 7. Pluggable gauges; 8. Extended browser;
(package, history, recover, etc.)
restriction: GNU General Public License
requires: Objectworks Smalltalk Release 4.1
contact: Watanabe Katsuhiro <katsu@sran14.sra.co.jp>
updated: 1993/01/20
language: Smalltalk
iref: (Pascal) Tim Budd's C++ implementation of Kamin's interpreters
--
Send compilers articles to compilers@iecc.com or
{ima | spdcc | world}!iecc!compilers. Meta-mail to compilers-request@iecc.com.